Шаг 2 - Что к чему

Как вы помните, Java для работы требует JVM - виртуальную Java-машину. Название, как водится, оглушительное - идея до гениальности проста. Что такое процессор? - Устройство, имеющее систему команд, и способное выполнять последовательность таких команд, называемую программой. Для Java-программы JVM - процессор. Ее система команд строго определена спецификацией - не подумайте, что каждый разработчик изобретает что-то свое, но каждый уважающий себя разработчик оптимизирует свою JVM как может (поэтому разные JVM одну и ту же программу выполняют с различной скоростью).

Платформы

Платформа - комплексное понятие. Наверное, наиболее полным определением будет следующее:

платформа - совокупность архитектур оборудования, ресурсов аппаратуры, операционных систем и способов взаимодействия вычислительных комплексов в системе.

Сложно, правда? Это только на первый взгляд. Сетями сейчас никого не удивишь, разве что американцев нашими доморощенными. Так вот способы взаимодействия вычислительных комплексов - и есть способы взаимодействия компьютеров в сети. Ваш компьютер - маленький вычислительный комплекс, большой компьютер (IBM 360/370, PDP-11, Cray-3) - большой вычислительный комплекс. Сеть, точнее, сети сетей (самая известная - Internet) - вычислительная система. Все просто.

С вычислительными ресурсами все понятно: много памяти, дисковые накопители большого объема, высокая тактовая частота, мощный процессор и не один - значит перед нами, как со священным трепетом в голосе говорят в магазине "Компьютерный мир" и "железячники" вообще, СЕРВЕР. Тс-с-с... Куда там... Не много памяти, один дисковый накопитель, один процессор, тактовая частота не космическая - это обычный компьютер. А вместе - разные платформы.

Ресурсы аппаратуры, сети - это все, конечно, правильно, но редко кто подразумевает эти аспекты, когда говорит о платформе. Широкая общественность чаще всего имеет в виду архитектуру ЭВМ в купе с операционной системой. Самый широкий разброс платформ наблюдается на "IBM-совместимых" (по-старинке) компьютерах: архитектура - в прошлом IBM, в настоящем Intel, операционные системы - от DOS до Power BSD. Мы в понимании платформы ограничимся архитектурой и операционной системой.

Системы программирования (SDK)

Язык программирования, очевидно, сам по себе ничего не стоит. Ну что от него толку, если нет транслятора на язык процессора? А если нет мало-мальски приемлемого набора готовых функций, ну, например, вычисляющих тригонометрические функции, или, что всем ближе, функций, обрабатывающих строки? Что, прикажете каждому программисту самому их выдумывать и писать, а только потом приступать к реализации основной задачи, а с появлением новой версии транслятора компилировать все поновой? Язык имеет ценность для вашей платформы только в том случае, если есть для него система программирования, "заточенная", естественно, специально для вашей платформы.

Так что же такое система программирования, или SDK - Sofware Development Kit (дословно - комплект разработки программного обеспечения)? Это совокупность спецификации языка (фундамент), библиотек стандартных функций, утилит (главная из них - транслятор) и, иногда, среды программирования (IDE). Ну вот BASIC, например, или C++ (я специально привожу их рядом, чтобы показать, что с точки зрения SDK они неразличимы). Имеют эти языки спецификацию? - Конечно, иначе не были бы языками. Существует набор стандартных функций (стандартный - значит удовлетворяющий стандарту)? - Да: для BASIC - это INPUT, PRINT, CIRCLE, SOUND и т. д., для C++ набор их куда шире, одна библиотека STL чего стоит, причем таких библиотек десятки, каждая - для своих нужд и все они стандартные (прошу заметить, MFC - не стандартная библиотека). Утилиты? - Обязательно: для BASIC - только транслятор, для C++ - компилятор, компоновщик, библиотекарь, транслятор IDL в H, искатель в файлах (grep) и т. д.

Установка JDK

Все, переходим к делу. Для начала загрузите JDK SE (Java SDK Standard Edition) с сервера Sun (см. сюда или сюда, для тех, кому лень).

Если вы будете загружать сами (а это предпочтительнее), то не удивляйтесь, когда вас попросят выбрать платформу. Один мой приятель крайне возмущался таким обстоятельством: "Java ведь не зависит от платформы!.." На самом деле в JDK входит JVM, которая непосредственно зависит от платформы. JVM для Windows - икзешник, все остальные утилиты - тоже икзешники - вот вам и зависимость от платформы, причем единственная (в EE нет икзешников, но там содержатся файлы настроек: для Windows - .BAT, для Linux - .shell и т. д.).

Вместе с SDK загрузите JRE - может пригодиться для браузера, если вы будете писать какие-нибудь мощные апплеты. Ну и естественно необходимо загрузить документацию, куда ж без нее родимой (здесь у вас про платформу не спросят).

Загрузить JDK EE (Java SDK Enterprise Edition) не так-то просто - для начала его нужно найти. Если нашли - хорошо, загружайте вместе с документацией. Про платформу снова спросят, причем в документации тоже, так как она дается в виде пресловутого икзешника (для Windows, короче, установка ее зависит от платформы, а сама дока - нет). Если вы используете Windows, но не серии NT, не пытайтесь запускать сервер Enterprise Edition - все равно работать не будет (причин масса), но загрузить надо.

Установите JDK и документацию. Рекомендую JDK SE поставить в каталог /Java/JDK, а JDK EE - в /Java/JDKEE. Документация по SE - обычный ZIP-архив, просто распакуйте его в каталог с JDK: при распаковке будет создан каталог docs, точка входа в документацию - index.html в нем. Документация по EE умная, сама все найдет и поставит. Добавьте в путь поиска запускаемых файлов (PATH в Windows) каталог JDK/bin. В этом каталоге "лежат" утилитки, в том числе компилятор в байткод (javac.exe) и JVM (java.exe). Все, можно программировать.

Fast Download

Эти кнопки помогут быстро загрузить последние (на 1 августа 2001 года) версии всех описанных программ.

Все версии для Windows. Способ загрузки - всегда HTTP. Для альтернативных вариантов пользуйтесь сервером Sun.

Java 2 SDK, Standard Edition 1.3.1 для Windows
Java 2 Runtime Environment, Standard Edition 1.3.1 для Windows (international version)
Java 2 SDK, Standard Edition 1.3.1, документация
Java 2 SDK Enterprise Edition 1.2.1 для Windows
Java 2 SDK, документация Enterprise Edition 1.2.1 для Windows

Автор: Danis Tazeyev.
Hosted by uCoz